#ifndef __DRV_INTERFACE_H__
#define __DRV_INTERFACE_H__

#include <base/base.h>
#include <HAL/deviceInterface.h>
#include <HAL/functionInterface.h>
#include <bus/busInterface.h>
#include <filter/filter.h>
#include <HAL/hal.h>

#include <boost/shared_ptr.hpp>


namespace ECG
{
namespace HAL
{

    class Driver : public CBase ,public BusInterface
    {
    public:
        Driver(){}
        virtual ~Driver(){}
        virtual bool probe(DevicePtr device)=0;// get fps,configure hw
    protected:
        DevicePtr device;// all device infomation in device instance
        FuncInterfacePtr fp; // the functions
        ECG::Filter::CFilterPtr filter;
    };
}
}

#endif //__DRV_INTERFACE_H__
